package com.ruoyi.produce.report.procedureProgress.domain;

import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.produce.process.worksheet.domain.ProduceProcedureTransferSheet;
import com.ruoyi.produce.process.worksheet.domain.WorkSheetProcedure;

import java.sql.Timestamp;
import java.util.List;

/**
 * 工序进度报表
 */
public class ProcedureProgress extends BaseEntity {
    /**
     * 生产计划
     */
    private String planSelfId;
    /**
     * 父级计划
     */
    private String planSelfIdParent;
    /**
     * 加工单号
     */
    private String workSheetId;
    /**
     * 商品编号
     */
    private String produceId;
    /**
     * 商品名称
     */
    private String produceName;
    /**
     * 规格
     */
    private String produceSpecs;
    /**
     * 工序编号
     */
    private String procedureId;
    /**
     * 工序名称
     */
    private String procedureName;
    /**
     * 单价
     */
    private String unitPrice;
    /**
     * 计划数量
     */
    private Double workSheetNumber;
    /**
     * 待完成数量
     */
    private Double unfinishedNumber;
    /**
     * 完成数量
     */
    private Double completedNumber;
    /**
     * 接收数量
     */
    private Double receivedNumber;
    /**
     * 报废数量
     */
    private Double scrapNumber;
    /**
     * 创建时间
     */
    private java.sql.Timestamp createTime;

    /**
     * 所需工序
     */
    private List<WorkSheetProcedure> workSheetProcedures;
    /**
     * 工序移交记录
     */
    private List<ProduceProcedureTransferSheet>produceProcedureTransferSheets;

    public List<ProduceProcedureTransferSheet> getProduceProcedureTransferSheets() {
        return produceProcedureTransferSheets;
    }

    public void setProduceProcedureTransferSheets(List<ProduceProcedureTransferSheet> produceProcedureTransferSheets) {
        this.produceProcedureTransferSheets = produceProcedureTransferSheets;
    }

    public List<WorkSheetProcedure> getWorkSheetProcedures() {
        return workSheetProcedures;
    }

    public void setWorkSheetProcedures(List<WorkSheetProcedure> workSheetProcedures) {
        this.workSheetProcedures = workSheetProcedures;
    }

    public String getPlanSelfId() {
        return planSelfId;
    }

    public void setPlanSelfId(String planSelfId) {
        this.planSelfId = planSelfId;
    }

    public String getPlanSelfIdParent() {
        return planSelfIdParent;
    }

    public void setPlanSelfIdParent(String planSelfIdParent) {
        this.planSelfIdParent = planSelfIdParent;
    }

    public String getWorkSheetId() {
        return workSheetId;
    }

    public void setWorkSheetId(String workSheetId) {
        this.workSheetId = workSheetId;
    }

    public String getProduceId() {
        return produceId;
    }

    public void setProduceId(String produceId) {
        this.produceId = produceId;
    }

    public String getProduceName() {
        return produceName;
    }

    public void setProduceName(String produceName) {
        this.produceName = produceName;
    }

    public String getProduceSpecs() {
        return produceSpecs;
    }

    public void setProduceSpecs(String produceSpecs) {
        this.produceSpecs = produceSpecs;
    }

    public String getProcedureId() {
        return procedureId;
    }

    public void setProcedureId(String procedureId) {
        this.procedureId = procedureId;
    }

    public String getProcedureName() {
        return procedureName;
    }

    public void setProcedureName(String procedureName) {
        this.procedureName = procedureName;
    }

    public String getUnitPrice() {
        return unitPrice;
    }

    public void setUnitPrice(String unitPrice) {
        this.unitPrice = unitPrice;
    }

    public Double getWorkSheetNumber() {
        return workSheetNumber;
    }

    public void setWorkSheetNumber(Double workSheetNumber) {
        this.workSheetNumber = workSheetNumber;
    }

    public Double getCompletedNumber() {
        return completedNumber;
    }

    public void setCompletedNumber(Double completedNumber) {
        this.completedNumber = completedNumber;
    }

    public Double getReceivedNumber() {
        return receivedNumber;
    }

    public void setReceivedNumber(Double receivedNumber) {
        this.receivedNumber = receivedNumber;
    }

    public Double getScrapNumber() {
        return scrapNumber;
    }

    public void setScrapNumber(Double scrapNumber) {
        this.scrapNumber = scrapNumber;
    }

    public Double getUnfinishedNumber() {
        return unfinishedNumber;
    }

    public void setUnfinishedNumber(Double unfinishedNumber) {
        this.unfinishedNumber = unfinishedNumber;
    }

    @Override
    public Timestamp getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Timestamp createTime) {
        this.createTime = createTime;
    }

    @Override
    public String toString() {
        return "ProcedureProgress{" +
                "planSelfId='" + planSelfId + '\'' +
                ", planSelfIdParent='" + planSelfIdParent + '\'' +
                ", workSheetId='" + workSheetId + '\'' +
                ", produceId='" + produceId + '\'' +
                ", produceName='" + produceName + '\'' +
                ", produceSpecs='" + produceSpecs + '\'' +
                ", procedureId='" + procedureId + '\'' +
                ", procedureName='" + procedureName + '\'' +
                ", unitPrice='" + unitPrice + '\'' +
                ", workSheetNumber=" + workSheetNumber +
                ", unfinishedNumber=" + unfinishedNumber +
                ", completedNumber=" + completedNumber +
                ", receivedNumber=" + receivedNumber +
                ", scrapNumber=" + scrapNumber +
                ", createTime=" + createTime +
                ", workSheetProcedures=" + workSheetProcedures +
                ", produceProcedureTransferSheets=" + produceProcedureTransferSheets +
                '}';
    }
}
